package com.smit.dvb;

/**
 * tuner参数
 */
public class DVBTunerInfo {
    /** DTMB */
    public static final int TUNER_TYPE_DTMB = 0x00000001;
    /** DVBC */
    public static final int TUNER_TYPE_DVBC = 0x00000002;
    /** DVBT */
    public static final int TUNER_TYPE_DVBT = 0x00000004;
    /** DVBT2 */
    public static final int TUNER_TYPE_DVBT2 = 0x00000008;
    /** DVBS */
    public static final int TUNER_TYPE_DVBS = 0x000000010;
    /** DVBS2 */
    public static final int TUNER_TYPE_DVBS2 = 0x00000020;

    /** 16QAM */
    public static final int MODULATION_16QAM = 16;
    /** 32QAM */
    public static final int MODULATION_32QAM = 32;
    /** 64QAM */
    public static final int MODULATION_64QAM = 64;
    /** 128QAM */
    public static final int MODULATION_128QAM = 128;
    /** 64QAM */
    public static final int MODULATION_256QAM = 256;

    /** band width 6 */
    public static final int BAND_WIDTH_6 = 6;
    /** band width 7 */
    public static final int BAND_WIDTH_7 = 7;
    /** band width 8 */
    public static final int BAND_WIDTH_8 = 8;

    /** 频道 kHz*/
    public int frequency;
    /** 符号率 kbs */
    public int symbolRate;
    /** 调制方式
     * @see #MODULATION_16QAM
     * @see #MODULATION_32QAM
     * @see #MODULATION_64QAM
     * @see #MODULATION_128QAM
     * @see #MODULATION_256QAM
     */
    public int modulation;
    /** 带宽
     * @see #BAND_WIDTH_6
     * @see #BAND_WIDTH_7
     * @see #BAND_WIDTH_8
     */
    public int bandWidth;
    /** 保留 */
    public int reserve;
    /** 锁定状态
     * 0 : 没锁住
     * 1 : 锁住
     */
    public int lockStatus;
    /** 电平(信号强度) */
    public int level;
    /** 信噪比(信号质量) */
    public int snr;
    /** tuner类型
     * @see #TUNER_TYPE_DTMB
     * @see #TUNER_TYPE_DVBC
     * @see #TUNER_TYPE_DVBT
     * @see #TUNER_TYPE_DVBT2
     * @see #TUNER_TYPE_DVBS
     * @see #TUNER_TYPE_DVBS2
     */
    public int tunerType;

    @Override
    public String toString() {
        return "frequency=" + frequency + " symbolRate=" + symbolRate
                + " modulation=" + modulation + " bandwidth=" + bandWidth
                + " lockStatus=" + lockStatus + " level=" + level + " snr=" + snr + " tunerType=" + tunerType;
    }
}